.verse-reference-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
	margin-bottom: 0.3rem;
	container-type: inline-size;
}

.verse-reference-row h4 {
	margin: 0;
	min-width: 0;
	width: fit-content;
	max-width: 100%;
	flex: 0 1 auto;
	line-height: 1.25;
	overflow-wrap: anywhere;
}

.verse-badge-streaks {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.45rem;
	flex: 0 0 auto;
	margin-left: auto;
}

.verse-activation-status {
	display: inline-flex;
	align-items: center;
	gap: 0.28rem;
	padding-left: 0.5rem;
	margin-left: 0.1rem;
	border-left: 1px solid rgba(106, 97, 82, 0.45);
	color: var(--color-muted, #6a6152);
	font-size: 0.78rem;
	font-weight: 700;
	line-height: 1;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	white-space: nowrap;
	position: relative;
	cursor: pointer;
}

.verse-activation-indicator {
	width: 0.78rem;
	height: 0.78rem;
	border-radius: 999px;
	border: 2px solid #7e847a;
	background: #a0a59d;
	box-sizing: border-box;
	flex: 0 0 auto;
	align-self: center;
}

.verse-activation-indicator.is-activated {
	background: #4fbf68;
	border-color: #2f8b44;
	box-shadow: 0 0 0 2px rgba(79, 191, 104, 0.18);
}

.verse-activation-indicator.is-inactive {
	background: #a0a59d;
	border-color: #7e847a;
}

.verse-activation-label {
	display: inline-block;
}

.verse-badge-item {
	display: inline-flex;
	align-items: center;
	gap: 0.18rem;
	color: var(--color-muted, #6a6152);
	font-size: 0.95rem;
	line-height: 1;
	position: relative;
	cursor: pointer;
}

.verse-badge-item::before,
.verse-badge-item::after,
.verse-activation-status::before,
.verse-activation-status::after {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.14s ease, transform 0.14s ease;
	position: absolute;
	left: 50%;
	z-index: 140;
}

.verse-badge-item::before,
.verse-activation-status::before {
	content: "";
	bottom: calc(100% + 1px);
	transform: translate(-50%, 5px);
	border-width: 6px 5px 0;
	border-style: solid;
	border-color: rgba(26, 26, 26, 0.95) transparent transparent;
}

.verse-badge-item::after,
.verse-activation-status::after {
	content: attr(data-tooltip);
	bottom: calc(100% + 7px);
	transform: translate(-50%, 5px);
	background: rgba(26, 26, 26, 0.95);
	color: #fff;
	padding: 0.3rem 0.45rem;
	border-radius: 6px;
	font-size: 0.72rem;
	font-weight: 600;
	line-height: 1.2;
	white-space: nowrap;
	letter-spacing: 0;
	text-transform: none;
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.24);
}

.verse-badge-item:hover::before,
.verse-badge-item:hover::after,
.verse-badge-item:focus-visible::before,
.verse-badge-item:focus-visible::after,
.verse-badge-item.show-tooltip::before,
.verse-badge-item.show-tooltip::after,
.verse-activation-status:hover::before,
.verse-activation-status:hover::after,
.verse-activation-status:focus-visible::before,
.verse-activation-status:focus-visible::after,
.verse-activation-status.show-tooltip::before,
.verse-activation-status.show-tooltip::after {
	opacity: 1;
	visibility: visible;
	transform: translate(-50%, 0);
}

/* Prevent clipping on row edges for first and last tooltip anchors. */
.verse-activation-status::before,
.verse-activation-status::after {
	left: 0;
	transform: translate(0, 5px);
}

.verse-activation-status::before {
	left: 0.22rem;
	transform: translate(0, 5px);
}

.verse-badge-streaks .verse-badge-item:last-child::before,
.verse-badge-streaks .verse-badge-item:last-child::after {
	left: auto;
	right: 0;
	transform: translate(0, 5px);
}

.verse-badge-streaks .verse-badge-item:last-child::before {
	right: 0.22rem;
}


.verse-activation-status.show-tooltip::before,
.verse-activation-status.show-tooltip::after,
.verse-activation-status:hover::before,
.verse-activation-status:hover::after,
.verse-activation-status:focus-visible::before,
.verse-activation-status:focus-visible::after,
.verse-badge-streaks .verse-badge-item:last-child.show-tooltip::before,
.verse-badge-streaks .verse-badge-item:last-child.show-tooltip::after,
.verse-badge-streaks .verse-badge-item:last-child:hover::before,
.verse-badge-streaks .verse-badge-item:last-child:hover::after,
.verse-badge-streaks .verse-badge-item:last-child:focus-visible::before,
.verse-badge-streaks .verse-badge-item:last-child:focus-visible::after {
	transform: translate(0, 0);
}

.verse-badge-icon {
	width: 0.95em;
	height: 0.95em;
	object-fit: contain;
	vertical-align: middle;
}

.verse-badge-count {
	min-width: 0.55em;
	text-align: left;
	font-weight: 700;
	letter-spacing: 0.01em;
}

@container (max-width: 430px) {
	.verse-activation-label {
		display: none;
	}

	.verse-activation-status {
		padding-left: 0.35rem;
	}
}

@media (max-width: 560px) {
	.verse-reference-row {
		gap: 0.35rem;
	}

	.verse-badge-streaks {
		gap: 0.3rem;
	}

	.verse-activation-status {
		font-size: 0.72rem;
		gap: 0.22rem;
	}
}

@media (max-width: 760px) {
	.verse-activation-label {
		display: none;
	}
}
